package com.mdinic.blogovi.service;

import java.util.List;

import com.mdinic.blogovi.front.common.login.Credentials;
import com.mdinic.blogovi.model.Person;
import com.mdinic.blogovi.service.model.LoginResult;
import com.mdinic.blogovi.service.model.RegisterResult;
import com.mdinic.blogovi.service.model.UpdatePersonResult;

public interface PersonService {

    RegisterResult register(Person person);

    void forgotPassword(String email);

    Person confirmRegistration(String code);

    LoginResult login(Credentials credentials);

    void logout(Person person);

    Person updateImage(long personId, String image);

    UpdatePersonResult updatePerson(Person person);

    Person confirmNewEmail(String string);

    boolean follow(Person person, Person object);

    boolean doIFollow(Person person, Person object);

    List<Person> getFollowing(Person person);

    String getUploadPhotoPathPersonSmall();

    String getUploadPhotoPathPerson();

}
